body {
    /* background: #f2f2f2; */
    background: #282c34;
}

.frame {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 400px;
    height: 400px;
    margin-top: -200px;
    margin-left: -200px;
    border-radius: 2px;
    box-shadow: 1px 2px 10px 0px rgba(0, 0, 0, 0.3);
    background: #f6e8d7;
    background: radial-gradient(ellipse at center, #f6e8d7 0%, #dabe9b 100%);
    overflow: hidden;
}

.floor {
    position: absolute;
    top: 244px;
    left: 0;
    right: 0;
    bottom: 0;
    background: #232323;
}

.leg {
    position: absolute;
    top: 0;
    left: 147px;
    width: 151px;
    height: 245px;
    /* background: #0003; */
    transform-origin: 50% 0;
}

.shoe {
    position: absolute;
    width: 151px;
    height: 128px;
    left: 0;
    bottom: 0;
    background: url('./doc-martens.svg') center center no-repeat;
}

.left {
    animation: leg_swing 2s ease-in-out infinite;
    .shoe {
        animation: shoe_turn 2s ease-in-out infinite;
    }
}
.right {
    animation: leg_swing 2s ease-in-out -1s infinite;
    .shoe {
        animation: shoe_turn 2s ease-in-out -1s infinite;
    }
}

@keyframes leg_swing {
    0%,
    100% {
        transform: rotate(-22deg);
    }
    50% {
        transform: rotate(40deg);
    }
}

@keyframes shoe_turn {
    0%,
    100% {
        transform: rotate(-10deg) translateY(-5px) translateX(10px);
    }
    25% {
        transform: rotate(0deg) translateY(0) translateX(0);
    }
    50% {
        transform: rotate(10deg) translateY(-10px) translateX(10px);
    }
    75% {
        transform: rotate(0deg) translateY(-30px) translateX(0px);
    }
}
